本課程將教你如何在自己的專案中使用 Gitlab CI。 你將學習 CI/CD 的基礎知識,並從第一堂課開始就開始建構管道。
以下是一些亮點:
– 瞭解 Gitlab 架構的概況
– 建立一個簡單的管道( pipeline )
– 利用一個簡單的網站學習 CI/CD 實務
– 在 Gitlab 使用 Docker 映像檔
https://softnshare.com/gitlab-ci-pipelines-ci-cd-and-devops-for-beginners/
「gitlab pipeline」的推薦目錄:
- 關於gitlab pipeline 在 軟體開發學習資訊分享 Facebook 的最佳貼文
- 關於gitlab pipeline 在 矽谷牛的耕田筆記 Facebook 的最佳解答
- 關於gitlab pipeline 在 矽谷牛的耕田筆記 Facebook 的最佳貼文
- 關於gitlab pipeline 在 進職場學到的Git - (1) Gitlab CI/CD 的評價
- 關於gitlab pipeline 在 mvisonneau/gitlab-ci-pipelines-exporter - GitHub 的評價
- 關於gitlab pipeline 在 Already up to date gitlab pipeline stackoverflow 的評價
gitlab pipeline 在 矽谷牛的耕田筆記 Facebook 的最佳解答
本篇文章是ㄧ個 Kubernetes 相關工具經驗分享文,作者認為即使是前端開發工程師也必須要瞭解一下 Kubernetes 這個容器管理平台,作者認為 k8s 基本上已經算是這個領域的標準(de-facto)。
因此作者於本篇文章介紹一些搭建一個 K8s 叢集時需要注意的工具,透過這些自動化工具來減少反覆動作的執行藉此簡化每天的工作流程。
工具包含
1. ArgoCD
2. MetalLB
3. External-secrets
4. Cert-manager
5. External-dns
Simplify deploying of new apps
作者大力推薦使用 ArgoCD 來簡化部署應用程式,作者提到一開始使用 ArgoCD 時也是感到無比煩感,因為心中一直存在要於 `GitLab CI/CD pipeline` 透過 kubectl apply 的方式來部署應用程式,並不想要導入其他的元件來加入更多的複雜性。
然而當作者嘗試 ArgoCD 後,第一眼發現的是其架構不如想像中複雜,完全依賴 GitOps 的原則來簡化整個部署流程,同時透過一個 WebUI 的方式來呈現當前應用程式的部署狀況
Load balancer for your on-prem clusters
地端環境的 Load-Balancer,沒什麼好說就是 MetalLB。
Managing your secrets
Secrets 是 Kubernetes 內一個非常重要的物件,然而大部分的團隊都會思考如何有效且安全的去管理 Kubernetes 內的 Secret 物件。雲端供應商譬如 AWS Secrets Manager, Azure Key Vault 或是廣受熱門的 HashiCorp Vault.
作者推薦使用 external-secrets operator 這個專案來將外部的管理系統給同步到 Kubernetes 內並且產生對於的 secrets。
詳細全文可以參考下列原文
https://chris-blogs.medium.com/tools-that-should-be-used-in-every-kubernetes-cluster-38969ed3e603
gitlab pipeline 在 矽谷牛的耕田筆記 Facebook 的最佳貼文
隨者資安意識的提升, Container Image 的安全性檢查變得愈來愈重要,最基本的想法就是針對 Image 本身去檢查是否有任何已知的 CVE 與 vulnerabilities,透過這類型的機制來確保我們要部署到生產環境的 Container Image 是足夠安全的。
目前至少有三種方法可以來達成這目標,第一種是直接使用相關的 CLI 工具掃描,第二種是將工具整合到 Container Registry 中,根據情況自動掃描,第三種則是將工具整合到 CI/CD pipeline 過程中,只有符合標準的 Container Image 才有資格被推到團隊所使用的 Container Image。
本文作者透過 Trivy 以及 GitlabCI 等工具來示範如何於 CI/CD pipeline 中完成 image 的安全性檢查(也就是方式三)。
# 重點整理
1. Trivy 掃出來的安全性有四種,分別是 Low, Medium, High 以及 Critical
2. Trivy 本身不定義什麼樣的結果叫做安全或不安全,完全是根據使用者自己決定。作者認為這個標準取決於團隊對於資安的重視性。範例中,作者定義只要有任何一個 Critical 等級的安全性漏洞,就將該 Image 視為不安全
3. 透過 Gitlab CI 的流程,來建置 Container Image,並且透過 Trivy 掃描,如果不符合安全定義就透過 exit-code 來結束該 stage,同時也會將 Trivy 的掃描結果給一併上傳。
如果對於(2)透過 container registry 來掃描的,可以參考我今年針對 ITHOME 鐵人賽所撰寫的文章: https://www.hwchiu.com/ithome/2020/registry/day21.html
原文:
https://medium.com/alterway/adding-image-security-scanning-to-a-ci-cd-pipeline-2faff072d
gitlab pipeline 在 mvisonneau/gitlab-ci-pipelines-exporter - GitHub 的推薦與評價
Prometheus / OpenMetrics exporter for GitLab CI pipelines insights - GitHub - mvisonneau/gitlab-ci-pipelines-exporter: Prometheus / OpenMetrics exporter for ... ... <看更多>
gitlab pipeline 在 進職場學到的Git - (1) Gitlab CI/CD 的推薦與評價
前言; 何謂CI/CD; Gitlab CI/CD Pipeline. Job; Stage. How to set pipeline? 建立Gitlab Runner. 安裝; 註冊. 測試CI/CD 是否正常運行; 後記 ... ... <看更多>